1. Field of the Invention
This invention relates to an image signal coding and decoding method, and more particularly is applicable to the case where feature points in an image are detected to thereby encode an image signal with high efficiency.
2. Description of the Related Art
Heretofore, as a method of encoding an image signal with high efficiency, there has been used a method in which an input image is orthogonally transformed by means of DCT (Discrete Cosine Transform) to thereby perform adaptive quantization corresponding to human visual characteristic for each frequency band, or a method in which an image is divided into bands by wavelet bases to thereby perform weighting for each band before encoding of the image. According to those methods, a high compression ratio can be obtained without distortion made prominent visually.
However, if the compression ratio is made higher, those methods have a disadvantage in that visually undesirable effects such as block distortion, and so on, are revealed. For this reason, as a coding method which makes such visually undesirable effects (distortion) avoidable even under the high compression rate, there is used a structure extraction coding method using detection of feature points in an image, in which feature points in a structure of an image are extracted to thereby perform efficient coding.
For example, as shown in FIG. 1, a structure extraction encoder 1 for detecting feature points in an image and encoding an image signal makes an input image signal S1 pass through a filter 2 constituted by a smoothing filter or by a wavelet-based band split filter to thereby generate a filter coefficient signal S2 and feed it to a quantizer 3 and to a two-dimensional feature point detecting circuit 4, respectively.
The quantizer 3 quantizes the filter coefficient signal S2 to thereby generate a quantized coefficient signal S3 and feed it to a select multiplexing circuit 5. The two-dimensional feature point detecting circuit 4 detects a feature point on the basis of the filter coefficient signal S2 and feeds a flag as a select signal S4 to the select multiplexing circuit 5 so that the flag has a value "1" when the current signal is detected as the feature point whereas the flag has a value "0" when the current signal is not detected as the feature point.
The select multiplexing circuit 5 multiplexes the quantized coefficient signal S3 at the feature point in the case of the select signal S4 of "1" and the chain-coded coordinates of the feature points and feeds the resulting multiplexed signal as a feature point signal S5 to a variable-length coding circuit 6. The variable-length coding circuit 6 applies entropy coding to the feature point signal S5 and feeds the thus obtained variable-length coded feature point signal S6 to a buffer memory 7. The buffer memory 7 smoothes the quantity of information of the variable-length coded feature point signal S6 and outputs the resulting signal as an output signal S7.
Here, the select multiplexing circuit 5 is configured as shown in FIG. 2. That is, the select multiplexing circuit 5 temporarily stores the select signal S4 in a frame buffer 8 and temporarily stores the quantized coefficient signal S3 in a frame buffer 9.
A chain coding circuit 10 extracts all sets of continuous feature points as chains from one scene by reference to the contents of the frame buffer 8 and outputs information with respect to each chain. For each chain, the coordinates of a starting point of the chain and the number of feature points contained in the chain are expressed at the starting point, and at each of feature points following the starting point are expressed at the feature point, a direction from a preceding feature point to a current feature point is outputted in accordance with codes as shown in FIG. 3 for expressing the coordinates thereof.
A chain code output signal S8 and a corresponding feature point quantized coefficient signal S10 taken out from the frame buffer 9 on the basis of an addressing signal S9 are multiplexed by a multiplexing circuit 11, so that the resulting multiplexed signal is outputted as a feature point signal S5.
That is, the multiplexing circuit 11 receives the chain code output signal S8 expressing the coordinates of a starting point of the chain, the number of feature points contained in the chain and the respective directions of transition of feature points following the starting point of the chain as shown in FIG. 4A and the feature point quantized coefficient signal S10 expressing the quantized coefficients at the respective feature points as shown in FIG. 4B, and multiplexes these signals S8 and S10 to thereby output a feature point signal S5 as shown in FIG. 4C.
The image data encoded by the structure extraction encoder 1 are decoded by a structure extraction decoder 12 as shown in FIG. 5. That is, the structure extraction decoder 12 makes a buffer 13 smooth the quantity of information of the image data signal S7 outputted from the structure extraction encoder 1 and then makes a variable-length decoding circuit 14 perform variable-length decoding to thereby obtain a feature point signal S11, which is fed to a split output circuit 15.
The split output circuit 15 divides the feature point signal S11 into positional information and quantized coefficient information and arranges quantized coefficients in the order of line scanning to thereby feed the quantized coefficients as a signal S12 to an inverse quantizer 16 which follows the split output circuit 15. The inverse quantizer 16 inverse-quantizes the quantized coefficient signal S12 to thereby generate a reconstructed coefficient signal S13 and feed it to an inverse transformation circuit 17. The inverse transformation circuit 17 outputs the reconstructed coefficient signal S13 without any change or applies transformation such as inverse wavelet transformation, or the like, to the reconstructed coefficient signal S13 and then supplies the resulting signal as an output signal S14, for example, to a television monitor, or the like.
Here, the conventional split output circuit 15 is configured as shown in FIG. 6. That is, the split output circuit 15 makes a splitting circuit 18 split the feature point signal S11 to thereby obtain a chain-coded positional information signal S15 and a quantized coefficient signal S16 and feed the two kinds of signals S15 and S16 to a chain decoding circuit 19 and a frame buffer 20, respectively. The chain decoding circuit 19 decodes the chain-coded positional information signal S15 so that the coded coordinates of the starting point of the chain is decoded at the starting point and that the direction of transition from a preceding feature point to a current feature point is decoded at each of feature points following the starting point in accordance with the coding as shown in FIG. 3. The chain decoding circuit 19 calculates the coordinates of the respective feature points on the basis of the decoded directions successively and supplies a feature point addressing signal S17 to the frame buffer 20 on the basis of results of the calculation. The frame buffer 20 stores the quantized coefficient signal S16 in addresses assigned by the addressing signal S17 successively and then outputs the quantized coefficient signal S16 as a split output circuit output S12 in the order of line scanning after processing for one scene is completed.
The aforementioned conventional feature point coding method is designed so that directions of transition which express the positions of feature points are encoded independent of each other only in accordance with the direction of transition from a preceding feature point to a current feature point. As a result, direction codes become redundant when there is some stochastic correlation between the direction of transition from a feature point two feature points before a current feature point to a preceding feature point and the direction of transition from the preceding feature point to the current feature point. There arises a disadvantage in that the codes increase in quantity.
Further, some specific pattern of direction codes of feature points can be replaced by another shorter pattern of direction codes without any visual difference between an image signal decoded from feature points and the original image signal. For example, the patterns which change sharply at pixel level can be hardly perceived actually. Moreover, most of patterns which change sharply at pixel level are caused by noise and should not be encoded normally. In the conventional feature point coding method, however, direction codes expressing the positions of feature points are obtained by equally coding all feature points. As a result, there arises a disadvantage in that direction codes become so redundant as to be increased in quantity correspondingly.
Further, in the conventional feature point coding method, quantized coefficients of feature points must be encoded correspondingly to the feature points. Accordingly, even in the case where quantized coefficients of feature points take the same value continuously, the same coefficient information must be fed repeatedly for the feature points. There arises a disadvantage in that the codes of the feature points contain a large amount of redundant components so as to increase the codes in quantity.